package com.weishi.project.training.domain;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.weishi.framework.aspectj.lang.annotation.Excel;
import com.weishi.project.api.vo.SportsmanPhysicalQualityVo;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;
import java.util.*;


/**
 * 身体素质
 */
@Data
@TableName("tbl_sportsman_physical_quality")
public class SportsmanPhysicalQuality implements Serializable {
    private static final long serialVersionUID = 1L;

    /** PK */
    private Integer id;
    
    /** 运动员ID */
    private Integer sportsmanId;

    @TableField(exist = false)
    private Integer sportsman_id;

    @Excel(name = "运动员名称")
    private String sportsmanName;

    @Excel(name = "采集时间")
    private String collectionTime;

    @Excel(name = "卧推绝对力量")
    @JsonProperty("one")
    private Double one;

    @Excel(name = "卧推绝对力量（理想值）")
    @JsonProperty("oneIdeal")
    private Double oneIdeal;

    @Excel(name = "卧推相对力量")
    @JsonProperty("two")
    private Double two;

    @Excel(name = "卧推相对力量（理想值）")
    @JsonProperty("twoIdeal")
    private Double twoIdeal;

    @Excel(name = "卧拉绝对力量")
    @JsonProperty("three")
    private Double three;

    @Excel(name = "卧拉绝对力量（理想值）")
    @JsonProperty("threeIdeal")
    private Double threeIdeal;

    @Excel(name = "卧拉相对力量")
    @JsonProperty("four")
    private Double four;

    @Excel(name = "卧拉相对力量（理想值）")
    @JsonProperty("fourIdeal")
    private Double fourIdeal;

    @Excel(name = "深蹲绝对力量")
    @JsonProperty("five")
    private Double five;

    @Excel(name = "深蹲绝对力量（理想值）")
    @JsonProperty("fiveIdeal")
    private Double fiveIdeal;

    @Excel(name = "深蹲相对力量")
    @JsonProperty("six")
    private Double six;

    @Excel(name = "深蹲相对力量（理想值）")
    @JsonProperty("sixIdeal")
    private Double sixIdeal;

    @Excel(name = "引体向上最大次数")
    @JsonProperty("seven")
    private Double seven;

    @Excel(name = "引体向上最大次数（理想值）")
    @JsonProperty("sevenIdeal")
    private Double sevenIdeal;

    @Excel(name = "腹肌耐力最大时长")
    @JsonProperty("eight")
    private Double eight;

    @Excel(name = "腹肌耐力最大时长（理想值）")
    @JsonProperty("eightIdeal")
    private Double eightIdeal;

    @Excel(name = "背肌耐力最大时长")
    @JsonProperty("nine")
    private Double nine;

    @Excel(name = "背肌耐力最大时长（理想值）")
    @JsonProperty("nineIdeal")
    private Double nineIdeal;

    @Excel(name = "2000米测功仪")
    @JsonProperty("ten")
    private Double ten;

    @Excel(name = "2000米测功仪（理想值）")
    @JsonProperty("tenIdeal")
    private Double tenIdeal;

    @Excel(name = "卧推（次）")
    @JsonProperty("eleven")
    private Double eleven;

    @Excel(name = "卧推（次）（理想值）")
    @JsonProperty("elevenIdeal")
    private Double elevenIdeal;

    @Excel(name = "卧拉（次）")
    @JsonProperty("twelve")
    private Double twelve;

    @Excel(name = "卧拉（次）（理想值）")
    @JsonProperty("twelveIdeal")
    private Double twelveIdeal;

    /** 坐立体前屈 */
    @Excel(name = "坐立体前屈")
    private Double anteflexion;

    /** 坐立体前屈理想值 */
    @Excel(name = "坐立体前屈理想值")
    private Double anteflexionIdeal;

    /** 垂直纵跳 */
    @Excel(name = "垂直纵跳")
    private Double verticalJump;

    /** 垂直纵跳理想值 */
    @Excel(name = "垂直纵跳理想值")
    private Double verticalJumpIdeal;

    /** 30米跑 */
    @Excel(name = "30米跑")
    private Double run30m;

    /** 30米跑理想值 */
    @Excel(name = "30米跑理想值")
    private Double run30mIdeal;

    @Excel(name = "100米跑")
    @JsonProperty("thirteen")
    private Double thirteen;

    @Excel(name = "100米跑（理想值）")
    @JsonProperty("thirteenIdeal")
    private Double thirteenIdeal;

    @Excel(name = "200米跑")
    @JsonProperty("fourteen")
    private Double fourteen;

    @Excel(name = "200米跑（理想值）")
    @JsonProperty("fourteenIdeal")
    private Double fourteenIdeal;

    @Excel(name = "400米跑")
    @JsonProperty("fifteen")
    private Double fifteen;

    @Excel(name = "400米跑（理想值）")
    @JsonProperty("fifteenIdeal")
    private Double fifteenIdeal;

    @Excel(name = "800米跑")
    @JsonProperty("sixteen")
    private Double sixteen;

    @Excel(name = "800米跑（理想值）")
    @JsonProperty("sixteenIdeal")
    private Double sixteenIdeal;

    @Excel(name = "1000米跑")
    @JsonProperty("eighteen")
    private Double eighteen;

    @Excel(name = "1000米跑（理想值）")
    @JsonProperty("eighteenIdeal")
    private Double eighteenIdeal;

    /** 3000米跑 */
    @Excel(name = "3000米跑")
    private Double run3000m;

    /** 3000米跑理想值 */
    @Excel(name = "3000米跑理想值")
    private Double run3000mIdeal;


    /** 卧推 */
    private Integer benchPress;
    
    /** 卧推理想值 */
    private Integer benchPressIdeal;
    
    /** 3分钟卧推（25公斤） */
    private Integer benchPress25kg3m;
    
    /** 3分钟卧推理想值（25公斤） */
    private Integer benchPress25kg3mIdeal;
    
    /** 硬拉 */
    private Integer hardPull;
    
    /** 硬拉理想值 */
    private Integer hardPullIdeal;
    
    /** 卧拉 */
    private Integer wola;
    
    /** 卧拉理想值 */
    private Integer wolaIdeal;
    
    /** 3分钟卧拉（30公斤） */
    private Integer wola30kg3m;
    
    /** 3分钟卧拉理想值（30公斤） */
    private Integer wola30kg3mIdeal;
    
    /** 高翻 */
    private Integer highTurnover;
    
    /** 高翻理想值 */
    private Integer highTurnoverIdeal;
    
    /** 深蹲 */
    private Integer squat;
    
    /** 深蹲理想值 */
    private Integer squatIdeal;
    
    /** 3分钟收腹 */
    private Integer pullStomachs3m;
    
    /** 3分钟收腹理想值 */
    private Integer pullStomachs3mIdeal;
    
    /** 3分钟深蹲(40公斤) */
    private Integer squat40kg3m;
    
    /** 3分钟深蹲理想值(40公斤) */
    private Integer squat40kg3mIdeal;
    
    /** 腹肌耐力 */
    private Integer abdominalEndurance;
    
    /** 腹肌耐力理想值 */
    private Integer abdominalEnduranceIdeal;
    
    /** 引体向上最大次数 */
    private Integer pullUp;
    
    /** 引体向上最大次数理想值 */
    private Integer pullUpIdeal;
    
    /** 静力高架背肌 */
    private Double staticElevatedDorsalMuscle;
    
    /** 静力高架背肌理想值 */
    private Double staticElevatedDorsalMuscleIdeal;
    
    /** 背肌耐力 */
    private Integer backMuscleEndurance;
    
    /** 背肌耐力理想值 */
    private Integer backMuscleEnduranceIdeal;

    /** 三级跳远 */
    private Double threeStepJump;
    
    /** 三级跳远理想值 */
    private Double threeStepJumpIdeal;
    private Date ctime;




    @TableField(exist = false)
    SportsmanPhysicalQualityVo sportsmanPhysicalQuality;

    public static Object getMap(SportsmanPhysicalQuality vo) {
        List<Map<String,Object>> list = new ArrayList<>();
        Map<String,Object> benchPress = new HashMap<>();
        benchPress.put("name","benchPress");
        benchPress.put("value",vo.getBenchPress());
        list.add(benchPress);
        Map<String,Object> benchPress25kg3m = new HashMap<>();
        benchPress25kg3m.put("name","benchPress25kg3m");
        benchPress25kg3m.put("value",vo.getBenchPress25kg3m());
        list.add(benchPress25kg3m);
        Map<String,Object> abdominalEndurance = new HashMap<>();
        abdominalEndurance.put("name","abdominalEndurance");
        abdominalEndurance.put("value",vo.getAbdominalEndurance());
        list.add(abdominalEndurance);
        Map<String,Object> anteflexion = new HashMap<>();
        anteflexion.put("name","anteflexion");
        anteflexion.put("value",vo.getAnteflexion());
        list.add(anteflexion);
        Map<String,Object> backMuscleEndurance = new HashMap<>();
        backMuscleEndurance.put("name","backMuscleEndurance");
        backMuscleEndurance.put("value",vo.getBackMuscleEndurance());
        list.add(backMuscleEndurance);
        Map<String,Object> hardPull = new HashMap<>();
        hardPull.put("name","hardPull");
        hardPull.put("value",vo.getHardPull());
        list.add(hardPull);
        Map<String,Object> highTurnover = new HashMap<>();
        highTurnover.put("name","highTurnover");
        highTurnover.put("value",vo.getHighTurnover());
        list.add(highTurnover);
        Map<String,Object> pullStomachs3m = new HashMap<>();
        pullStomachs3m.put("name","pullStomachs3m");
        pullStomachs3m.put("value",vo.getPullStomachs3m());
        list.add(pullStomachs3m);
        Map<String,Object> pullUp = new HashMap<>();
        pullUp.put("name","pullUp");
        pullUp.put("value",vo.getPullUp());
        list.add(pullUp);
        Map<String,Object> run30m = new HashMap<>();
        run30m.put("name","run30m");
        run30m.put("value",vo.getRun30m());
        list.add(pullUp);
        Map<String,Object> run3000m = new HashMap<>();
        run3000m.put("name","run3000m");
        run3000m.put("value",vo.getRun3000m());
        list.add(pullUp);
        Map<String,Object> squat = new HashMap<>();
        squat.put("name","squat");
        squat.put("value",vo.getSquat());
        list.add(pullUp);
        Map<String,Object> squat40kg3m = new HashMap<>();
        squat40kg3m.put("name","Squat40kg3m");
        squat40kg3m.put("value",vo.getSquat40kg3m());
        list.add(pullUp);
        Map<String,Object> staticElevatedDorsalMuscle = new HashMap<>();
        staticElevatedDorsalMuscle.put("name","staticElevatedDorsalMuscle");
        staticElevatedDorsalMuscle.put("value",vo.getStaticElevatedDorsalMuscle());
        list.add(pullUp);
        Map<String,Object> threeStepJump = new HashMap<>();
        threeStepJump.put("name","threeStepJump");
        threeStepJump.put("value",vo.getThreeStepJump());
        list.add(pullUp);
        Map<String,Object> verticalJump = new HashMap<>();
        verticalJump.put("name","verticalJump");
        verticalJump.put("value",vo.getVerticalJump());
        list.add(pullUp);
        Map<String,Object> wola = new HashMap<>();
        wola.put("name","wola");
        wola.put("value",vo.getWola());
        list.add(pullUp);
        Map<String,Object> wola30kg3m = new HashMap<>();
        wola30kg3m.put("name","wola30kg3m");
        wola30kg3m.put("value",vo.getWola30kg3m());
        list.add(pullUp);
        return list;
    }


}